//
//  UIButton+Extension.swift
//  WeiBo
//
//  Created by Tony on 2017/12/27.
//  Copyright © 2017年 Tony. All rights reserved.
//

import UIKit

extension UIButton {
    // 仿OC写法，可以分系统类添加灶方法
    // OC的类方法以+开头
    // Swift的类方法以class开头
    class func createBtn(imageName: String, bgImageName: String) -> UIButton {
        let btn = UIButton()
        // _highlighted
        btn.setImage(UIImage.init(named: imageName), for: .normal)
        btn.setImage(UIImage.init(named: imageName + "_highlighted"), for: .highlighted)
        
        btn.setBackgroundImage(UIImage.init(named: bgImageName), for: .normal)
        btn.setBackgroundImage(UIImage.init(named: bgImageName + "_highlighted"), for: .highlighted)
        
        btn.sizeToFit()
        
        return btn
    }
    
    // Siwft扩展类系统类方法时，不建议扩展类方法，建议扩展便利构造函数
    // 便利构造使用场景：一般用在类扩展内，给类的构造函数扩展使用
    // 使用便利构造函数注意如下：
    //      1、使用关键字convenience修饰
    //      2、先调用self.init()
    
    // 注意：构造函数是没有返回值
    convenience init(imageName: String, bgImageName: String) {
        self.init()
        
        setImage(UIImage.init(named: imageName), for: .normal)
        setImage(UIImage.init(named: imageName + "_highlighted"), for: .highlighted)
        
        setBackgroundImage(UIImage.init(named: bgImageName), for: .normal)
        setBackgroundImage(UIImage.init(named: bgImageName + "_highlighted"), for: .highlighted)
        
        sizeToFit()
        
    }
}
